perm filename ICCMAC.POX[POX,WD] blob
sn#363243 filedate 1978-06-18 generic text, type T, neo UTF8
\|\\; Define Brick Character
\;
\;
\; Define Fonts
\;
\M0FIX25;\; fixed font
\M1BAXL30;\; light
\M2BAXI30;\; italic
\M3BAXB30;\; bold
\M4CLAR40;\; title font
\M5BASL35;\; subtitle font
\M6BDJ20;\; superscript and subscript font
\M7ZERO30;\; accents
\M8GRFX25;\; graphics font
\M9CORON;\; font for names of sets
\MAMATH30;\; mathematical font
\MBFIX20;\; small fixed font
\MCGRK30;\; Greek
\;
\F0\; select font 0
\;
\;
\; Page Dimensions
\;
\←=200;\→L\; left margin
\←=1510;\→R\; right margin
\e=2200;\; set length of page
\T=200;\; set top of page
\B=2000;\; set bottom of page
\;
\;
\; Assembly Flags
\;
\∞SUMMARYFLAG[\←=0;]\; print remarks
\∞REMARKFLAG[\←=0;]\; print remarks
\∞REVNOTEFLAG[\←=0;]\; print notes to reviewer
\∞RUNTITFLAG[\←=1;]\; print running titles
\;
\;
\; Dynamic Flags
\;
\∞INSECFLAG[\←=0;]\; inside a section ?
\;
\;
\; Special Feature Bits
\;
\⊂'000001;\; VERHHR - H and h height of font pseudo-register
\; \⊂'000002;\; VERTRC - trace and other tty output
\⊂'000004;\; VERSIM - linefeed simulator
\⊂'000010;\; VERSGK - double gap after period and colon
\⊂'000040;\; VERREM - REM's syntax form macros with args definitions
\;\⊂'000100;\; VEREVE - turn on EVERYPAGE macro
\⊂'000400;\; VERRHT - modified way to pass args with nest chars
\⊂'010000;\; VERPAG - automatic page change
\⊂'200000;\; VERXX1 - correct output overlay
\⊂'1000002;\; VE1OPN - print output page numbers
\;
\;
\@NUMER.POX[POX,WD];\; read in numeric macros
\;
\@ROMLET.POX[POX,WD];\; load letter and roman numeral conversions
\;
\@DATE.POX[POX,WD];\; read in date macros
\;
\∞EVERYPAGE[\P\N
\ ;\←#\+=1;\→#\N increment global page #
\ ;\←U\+=1;\→U\N increment local page #
\ ;\!INSECFLAG;\?SECPAGNUM(\DS,\DU);\N print sec and pag nums ?
\ ;\oABSPAG{0 - \D#}\N construct global page # overlay
\ ;\T=200;\; set top of page
\ ;\&DATPAG←DATIM&ABSPAG;\N join it with date overlay
\ ;\WDATPAG,=200;=2150;\N print date and page overlay
\ ;\p]\; restore ac
\;
\;
\8SECPAGNUM(SEC,PAG)[\N
\ ;\oPAGNO{0\!ROMAN(⊗SEC⊗);-⊗PAG⊗}\N construct local page overlay
\ ;\WPAGNO,=800;=2100;]\; print local page overlay
\;
\;
\@MISMAC.POX[POX,WD];\; load miscellaneous macros
\;
\@SECT.POX[POX,WD];\; read section and sucsection stuff
\;
\;redefine some macros from SECT.POX
\;
\8SECT(NAME,TIT)[\P\N save ac
\ ;\∞INSECFLAG[\←=1;]\N turn on INSECFLAG
\ ;\←S\+=1;\→S\N increment section number
\ ;\←'0;\→U\N set local page # to 0
\ ;\←'0;\→F\N set form # to 0
\ ;\←'0;\→J\N set illustration # to 0
\ ;\←'0;\→T\N set subsec # to 0
\ ;\F1\N reset font to #1
\ ;\!EVAL((\∞)⊗NAME⊗(SECNUM[)\DS(]));\N store section #
\ ;\!EVAL((\m{
Section )\DS( - )⊗TIT⊗( )\←#\+=1;\D∀(
)(}));\N type sect title
\ ;\!EVAL((\==1;{
Section )\!ROMAN(\DS);( - )⊗TIT⊗( )(}));\N put sectit in cont
\ ;\C\#\F5\[=2;=2;⊗TIT⊗\]\G\; print section header
\ ;\p]\; restore ac
\;
\;
\; Odd (unnumbered) Section Macro
\;
\8ODDSEC(NAME,TIT)[\P\N save ac
\ ;\←'0;\→U\N set local page # to 0
\ ;\F1\N reset font to #1
\ ;\!EVAL((\∞)⊗NAME⊗(SECNUM[)\DS(]));\N store section #
\ ;\!EVAL((\m{
)⊗TIT⊗( )\←#\+=1;\D∀(
)(}));\N type sect title
\ ;\!EVAL((\==1;{
)⊗TIT⊗(
)(}));\N put sectit in cont
\ ;\C\#\F5⊗TIT⊗\G\N print section header
\ ;\p]\; restore ac
\;
\8SUBSEC(NAME,TIT)[\P\N save ac
\ ;\←T\+=1;\→T\N increment subsec #
\ ;\!EVAL((\∞)⊗NAME⊗(SUBSECSECNUM[)\DS(]));\N store section #
\ ;\!EVAL((\∞)⊗NAME⊗(SUBSECNUM[)\DT(]));\N store subsec #
\ ;\!EVAL((\==1;{
)\!LETTER(\DT);(. )⊗TIT⊗(.)(}));\N put subsec tit in cont
\ ;\#\F2\[=2;=2;⊗TIT⊗\]\G\N print subsec head
\p]\; restore ac
\;
\@REF.POX[POX,WD];\; read in cit and ref stuff
\;
\<=1;ICC.CNT;\;
\;
\;\!EVERYPAGE;\;
\,